package com.qidian.mes.pro.mapper;

import com.qidian.mes.pojo.Order;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author dqy
 * @Description
 * @Time 2024/4/25 16:14
 */
public interface OrderMapper {
    /**
     * 插入工单
     * @param order
     * @return
     */
    int insertOrder(Order order);
    /**
     * 更新工单
     * @param order
     * @return
     */
    int updateOrder(Order order);
    /**
     * 删除工单
     * @param woId
     * @return
     */
    int deleteOrder(Long woId);
    /**
     * 批量删除工单
     * @param woIds
     * @return
     */
    int deleteOrders(Long[] woIds);
    /**
     * 分页查询工单
     * @param order
     * @param start
     * @param limit
     * @return
     */
    List<Order> queryByPage(@Param("order")Order order, @Param("start") int start, @Param("limit") int limit);
    /**
     * 查询工单总数
     * @param order
     * @return
     */
    int selectCount(Order order);
    /**
     * 通过id查询工单
     * @param woId
     * @return
     */
    Order selectById(Long woId);
    /**
     * 通过工单编码查询工单
     * @param woCode
     * @return
     */
    List<Order> selectByCode(String woCode);
    /**
     * 通过工单名称查询工单
     * @param woName
     * @return
     */
    List<Order> selectByName(String woName);
    /**
     * 通过父工单id查询子工单
     * @param woParentId
     * @return
     */
    List<Order> selectByParentId(Long woParentId);
}
